In prior art local area networks, such as the Ethernet system, frames or messages transmitted on a transmission medium interconnecting a plurality of transmitter/receiver stations include source address (SA) and destination address (DA) information as well as data. Also connected to the medium are bridges to destinations outside of the first network, for example stations on an interconnected second network.
When a message is received at a first port in a bridge, it is filtered to decide whether that frame should be forwarded to another port in the bridge for transmission onto the second network. How quickly such a decision can be made largely determines the performance of the bridge. Filtering in a transparent bridge generally involves two different activities. First, a data base of the addresses of the active stations on the local network must be established and maintained. This is done by "learning", i.e., collecting the source addresses of all frames traveling on the network in the data base. Second, for every frame arriving at the bridge, the data base is searched to determine whether the destination address of the arrival frame matches any entries in the data base. If a match exists, it is concluded that the frame is destined for a station on the local network where the port is connected. In this event, the frame needs no further processing in the bridge. On the other hand, if there is no match, then the destination is assumed to be a station on a different network, in which case the frame may be further processed and founded to a second port in the bridge for transmission onto the second network.
In prior art filter implementations in transparent bridges, the above procedures are performed mostly by software. A port usually receives all frames, regardless of their destination address and passes them into a buffer memory, while a processor examines every frame in the buffer memory and uses the source and destination address information to determine if the frame is to be output, and to build up and update the SA data base. As long as information transmission speeds on the network are relatively slow, (e.g., below 10 Mbs and less than 20 Kf/s) the filtering process just described can adequately be implemented in software. However, in the FDDI environment described in the ANSI X3T9.5 document, where speeds of 100 Mbs and a maximum frame rate of greater than 500 K f/s may occur, this approach is not acceptable. This is because the time necessary to process every message (in order to identify the fraction of messages that are bound for external networks) could far exceed the time interval at which successive messages are presented to the bridge from the network, resulting in the overflowing of the memory and/or overloading of the processor.